GPU禁令限制计算 & NVIDIA A800/H800/L40等替代分析
注:本文只代表作者个人观点,与任何组织机构无关,如有错误和不足之处欢迎在留言中批评指正。
接近一个月没有发原创文章,本来我不是很想蹭这个热点。不过前段时间我就准备写一篇《生成式AI (大语言模型) 推理GPU系统设计与H100替代分析》,大家也知道H800与H100差的主要就是NVLink互连的数量和总带宽。
显然到了今天,之前规划的内容有些已经价值不大了——因为其中的NVIDIA L40、L40S、RTX 4090已经上了名单,我在下文中还是会列出曾经制作的那个表,当然加了些东西。
首先给大家列出昨天的消息来源:
上图中我加了一些红字,是为了更正其中可能存在的错误,尽管它们并不影响最终结论。考虑到这个图表出自金融/投资圈的朋友,又能在第一时间就流传开来,其整体内容质量我还是应该点赞的。
关于H100/H800和RTX 4090等GPU的算力,我会在后面给大家列出更详细的表格。另外,我也看到有朋友指出过,这里用TF32来计算TPP(Total processing performance)似有不妥,因为使用TF32的TFLOPS乘以浮点数长度,应该不是x32而是x19——后面也会有一张“Brief Review of Data Formats”图片来解释这点。
上图即来自NVIDIA官网可下载的“SEC Filings Details”文件。下面的文字,则来自《Implementation of Additional Export Controls: Certain Advanced Computing Items; Supercomputer and Semiconductor End Use; Updates and Corrections》,也就是具体的限制条款。
“place a simplified paragraph .a and .b. The revised 3A090.a control parameter will control ICs with one or more digital processing units having either: (1) a ‘total processing performance’ of 4800 or more, or (2) a ‘total processing performance’ of 1600 or more and a ‘performance density’ of 5.92 or more. The new ECCN 3A090.b will control ICs with one or more digital processing units having either: (1) a ‘total processing performance’ of 2400 or more and less than 4800 and a ‘performance density’ of 1.6 or more and less than 5.92, or (2) a ‘total processing performance’ of 1600 or more and a ‘performance density’ of 3.2 or more and less than 5.92. See Technical Notes to ECCN 3A090 for calculating ‘total processing performance’ and ‘performance density.’ Together, these paragraphs expand the scope of control as compared to the October 7 IFR. This action is necessary to ensure that ICs below the October 7 ECCN 3A090 parameters that were still useful for training advanced AI with military applications would be controlled. ”
以上就是本文中第一张图翻译成中文说明的来源。我试着把限制范围整理成下面的图表:
我制表的水平实在不高,本来还想把不同GPU的坐标点也标上去… 大家凑合看看吧
上面的横坐标为TPP (Total processing performance,算力*位宽),纵坐标PD (Performance Density算力密度,TPP/Die Size)。一共4条规则我用不同颜色的方块来代表——它们之间是有重叠的。如果100%按此实行,最终结果就只有位于坐标轴左下方白色区域的GPU/AI芯片,允许在国内销售了。
上图是浮点数格式的说明。其中FP32(32bit)、FP16(16bit)都是指传统的格式。FP32为8bit指数范围、23bit数据精度;FP16则是5bit指数范围、10bit数据精度。
TF32(Tensor Float, 19bit)实际上以精简的格式和处理量,指数范围保持在FP32 8bit的水平,但数据精度大幅精简至10bit。该格式还有一点好处就是用NVIDIA Tensor Core加速的性能优化好。
BF16(Brain Float, 16bit)也达到了与FP32相同的8bit指数范围,数据精度7bit则低于传统FP16。它的总处理量并不低于FP16,并且也能利用Tensor Core加速。——我认为用BF16来计算我们需要的TPP数值应该最合适。
(图片点开后可缩放)
从NV资料来看,RTX 4090的Tensor算力加速效率似乎比RTX 6000 Ada要低一倍?不确定实际应用中是哪种情况。
上表就是在我之前整理的基础上,添加了TPP和PD两行内容;A100一列也是临时加的,所以只放了需要用的信息。其中除了Die size有些来自GPU-Z网站之外,其余数值基本都取自NVIDIA官方资料。关于H100/H800、A100/A800之间的差异,麻烦大家脑补一下:)
标黄色的行,就是我使用的计算参数来源:包括“使用FP32 累加的 FP16/BF16 Tensor TFLOPS 峰值”(注:统一以斜杠左边数值为准,这里不使用稀疏精度),以及GPU芯片Die面积。标红色的文字即触发禁令了——我先看TPP算力,如果不超过4800再结合PD性能密度一起看。
需要指出的是,我并没有实际测试过L40S是否真的比L40快一倍?不过作为工作站显卡的RTX 6000 Ada,可以说是L40S GPU的最佳替代者——前提是它不会上名单的情况下。
而之前一代的RTX A6000最大的价值就是NVLink,尽管只能双卡互连,但48GB x2=96GB的显存可能是以后跑LLM较大模型,剩下最好的一种选择了?在新的禁令实施之后,似乎只有A40才能与之相当(A40应该也没上名单吧)。真心希望这几款卡能继续卖:)
上面补充一条新消息,希望是真的,这样我们就还能见到RTX 4090哈。
扩展阅读:《企业存储技术》文章分类索引(微信公众号专辑)》
注:本文只代表作者个人观点,与任何组织机构无关,如有错误和不足之处欢迎在留言中批评指正。进一步交流可加微信:490834312。如果您想在这个公众号上分享自己的技术干货,也欢迎联系我:)
尊重知识,转载时请保留全文,并包括本行及如下二维码。感谢您的阅读和支持!《企业存储技术》微信公众号:HL_Storage
长按二维码可直接识别关注
历史文章汇总:http://www.toutiao.com/c/user/5821930387/
http://www.zhihu.com/column/huangliang
点击下方“阅读原文”,查看更多历史文章↓↓↓